package com.b1502.store2.model;

import com.b1502.store2.util.UrlUtil;

import java.util.List;

/**
 * 1.类的用途：
 * 2.zhaoayuan
 * 3.@date 2017/03/01 18:21
 * 4.用途:
 */
public class HomeProductDetailsBean {

    private String Id;
    private String Name;
    private double Price;
    private double MemberPrice;
    private String Introduce;
    private String Unit;
    private String ImageUrl;
    private String ProductCategoryId;
    private String ProductCategoryName;
    private String BrandId;
    private String BrandName;
    private Object Score;
    private String GroupId;
    private List<PromotionsBeanX> Promotions;
    private List<CustomPropertiesBean> CustomProperties;
    private List<ArgumentsBean> Arguments;
    private List<FieldsBean> Fields;

    public String getId() {
        return Id;
    }

    public void setId(String Id) {
        this.Id = Id;
    }

    public String getName() {
        return Name;
    }

    public void setName(String Name) {
        this.Name = Name;
    }

    public double getPrice() {
        return Price;
    }

    public void setPrice(double Price) {
        this.Price = Price;
    }

    public double getMemberPrice() {
        return MemberPrice;
    }

    public void setMemberPrice(double MemberPrice) {
        this.MemberPrice = MemberPrice;
    }

    public String getIntroduce() {
        return Introduce;
    }

    public void setIntroduce(String Introduce) {
        this.Introduce = Introduce;
    }

    public String getUnit() {
        return Unit;
    }

    public void setUnit(String Unit) {
        this.Unit = Unit;
    }

    public String getImageUrl() {
        return UrlUtil.getImageUrl(ImageUrl);
    }

    public void setImageUrl(String ImageUrl) {
        this.ImageUrl = ImageUrl;
    }

    public String getProductCategoryId() {
        return ProductCategoryId;
    }

    public void setProductCategoryId(String ProductCategoryId) {
        this.ProductCategoryId = ProductCategoryId;
    }

    public String getProductCategoryName() {
        return ProductCategoryName;
    }

    public void setProductCategoryName(String ProductCategoryName) {
        this.ProductCategoryName = ProductCategoryName;
    }

    public String getBrandId() {
        return BrandId;
    }

    public void setBrandId(String BrandId) {
        this.BrandId = BrandId;
    }

    public String getBrandName() {
        return BrandName;
    }

    public void setBrandName(String BrandName) {
        this.BrandName = BrandName;
    }

    public Object getScore() {
        return Score;
    }

    public void setScore(Object Score) {
        this.Score = Score;
    }

    public String getGroupId() {
        return GroupId;
    }

    public void setGroupId(String GroupId) {
        this.GroupId = GroupId;
    }

    public List<PromotionsBeanX> getPromotions() {
        return Promotions;
    }

    public void setPromotions(List<PromotionsBeanX> Promotions) {
        this.Promotions = Promotions;
    }

    public List<CustomPropertiesBean> getCustomProperties() {
        return CustomProperties;
    }

    public void setCustomProperties(List<CustomPropertiesBean> CustomProperties) {
        this.CustomProperties = CustomProperties;
    }

    public List<ArgumentsBean> getArguments() {
        return Arguments;
    }

    public void setArguments(List<ArgumentsBean> Arguments) {
        this.Arguments = Arguments;
    }

    public List<FieldsBean> getFields() {
        return Fields;
    }

    public void setFields(List<FieldsBean> Fields) {
        this.Fields = Fields;
    }

    public static class PromotionsBeanX {

        private String Type;
        private List<ContentsBean> Contents;

        public String getType() {
            return Type;
        }

        public void setType(String Type) {
            this.Type = Type;
        }

        public List<ContentsBean> getContents() {
            return Contents;
        }

        public void setContents(List<ContentsBean> Contents) {
            this.Contents = Contents;
        }

        public static class ContentsBean {

            private String Id;
            private double LevelValue;
            private String GivenValue;
            private String PromotionId;
            private String CreateDateTime;
            private String ApplicationId;
            private String Description;
            private PromotionBean Promotion;

            public String getId() {
                return Id;
            }

            public void setId(String Id) {
                this.Id = Id;
            }

            public double getLevelValue() {
                return LevelValue;
            }

            public void setLevelValue(double LevelValue) {
                this.LevelValue = LevelValue;
            }

            public String getGivenValue() {
                return GivenValue;
            }

            public void setGivenValue(String GivenValue) {
                this.GivenValue = GivenValue;
            }

            public String getPromotionId() {
                return PromotionId;
            }

            public void setPromotionId(String PromotionId) {
                this.PromotionId = PromotionId;
            }

            public String getCreateDateTime() {
                return CreateDateTime;
            }

            public void setCreateDateTime(String CreateDateTime) {
                this.CreateDateTime = CreateDateTime;
            }

            public String getApplicationId() {
                return ApplicationId;
            }

            public void setApplicationId(String ApplicationId) {
                this.ApplicationId = ApplicationId;
            }

            public String getDescription() {
                return Description;
            }

            public void setDescription(String Description) {
                this.Description = Description;
            }

            public PromotionBean getPromotion() {
                return Promotion;
            }

            public void setPromotion(PromotionBean Promotion) {
                this.Promotion = Promotion;
            }

            public static class PromotionBean {

                private String Id;
                private boolean IsAll;
                private String ActivityId;
                private String ApplicationId;
                private String CreateDateTime;
                private String Type;
                private String Method;
                private PromotionActivityBean PromotionActivity;
                private List<PromotionRangeRulesBeanX> PromotionRangeRules;

                public String getId() {
                    return Id;
                }

                public void setId(String Id) {
                    this.Id = Id;
                }

                public boolean isIsAll() {
                    return IsAll;
                }

                public void setIsAll(boolean IsAll) {
                    this.IsAll = IsAll;
                }

                public String getActivityId() {
                    return ActivityId;
                }

                public void setActivityId(String ActivityId) {
                    this.ActivityId = ActivityId;
                }

                public String getApplicationId() {
                    return ApplicationId;
                }

                public void setApplicationId(String ApplicationId) {
                    this.ApplicationId = ApplicationId;
                }

                public String getCreateDateTime() {
                    return CreateDateTime;
                }

                public void setCreateDateTime(String CreateDateTime) {
                    this.CreateDateTime = CreateDateTime;
                }

                public String getType() {
                    return Type;
                }

                public void setType(String Type) {
                    this.Type = Type;
                }

                public String getMethod() {
                    return Method;
                }

                public void setMethod(String Method) {
                    this.Method = Method;
                }

                public PromotionActivityBean getPromotionActivity() {
                    return PromotionActivity;
                }

                public void setPromotionActivity(PromotionActivityBean PromotionActivity) {
                    this.PromotionActivity = PromotionActivity;
                }

                public List<PromotionRangeRulesBeanX> getPromotionRangeRules() {
                    return PromotionRangeRules;
                }

                public void setPromotionRangeRules(List<PromotionRangeRulesBeanX> PromotionRangeRules) {
                    this.PromotionRangeRules = PromotionRangeRules;
                }

                public static class PromotionActivityBean {
                    private String Id;
                    private String BeginDate;
                    private String EndDate;
                    private boolean Disabled;
                    private String ApplicationId;
                    private String CreateDateTime;
                    private List<PromotionsBean> Promotions;

                    public String getId() {
                        return Id;
                    }

                    public void setId(String Id) {
                        this.Id = Id;
                    }

                    public String getBeginDate() {
                        return BeginDate;
                    }

                    public void setBeginDate(String BeginDate) {
                        this.BeginDate = BeginDate;
                    }

                    public String getEndDate() {
                        return EndDate;
                    }

                    public void setEndDate(String EndDate) {
                        this.EndDate = EndDate;
                    }

                    public boolean isDisabled() {
                        return Disabled;
                    }

                    public void setDisabled(boolean Disabled) {
                        this.Disabled = Disabled;
                    }

                    public String getApplicationId() {
                        return ApplicationId;
                    }

                    public void setApplicationId(String ApplicationId) {
                        this.ApplicationId = ApplicationId;
                    }

                    public String getCreateDateTime() {
                        return CreateDateTime;
                    }

                    public void setCreateDateTime(String CreateDateTime) {
                        this.CreateDateTime = CreateDateTime;
                    }

                    public List<PromotionsBean> getPromotions() {
                        return Promotions;
                    }

                    public void setPromotions(List<PromotionsBean> Promotions) {
                        this.Promotions = Promotions;
                    }

                    public static class PromotionsBean {

                        private String Id;
                        private boolean IsAll;
                        private String ActivityId;
                        private String ApplicationId;
                        private String CreateDateTime;
                        private String Type;
                        private String Method;
                        private List<PromotionContentRulesBean> PromotionContentRules;
                        private List<PromotionRangeRulesBean> PromotionRangeRules;

                        public String getId() {
                            return Id;
                        }

                        public void setId(String Id) {
                            this.Id = Id;
                        }

                        public boolean isIsAll() {
                            return IsAll;
                        }

                        public void setIsAll(boolean IsAll) {
                            this.IsAll = IsAll;
                        }

                        public String getActivityId() {
                            return ActivityId;
                        }

                        public void setActivityId(String ActivityId) {
                            this.ActivityId = ActivityId;
                        }

                        public String getApplicationId() {
                            return ApplicationId;
                        }

                        public void setApplicationId(String ApplicationId) {
                            this.ApplicationId = ApplicationId;
                        }

                        public String getCreateDateTime() {
                            return CreateDateTime;
                        }

                        public void setCreateDateTime(String CreateDateTime) {
                            this.CreateDateTime = CreateDateTime;
                        }

                        public String getType() {
                            return Type;
                        }

                        public void setType(String Type) {
                            this.Type = Type;
                        }

                        public String getMethod() {
                            return Method;
                        }

                        public void setMethod(String Method) {
                            this.Method = Method;
                        }

                        public List<PromotionContentRulesBean> getPromotionContentRules() {
                            return PromotionContentRules;
                        }

                        public void setPromotionContentRules(List<PromotionContentRulesBean> PromotionContentRules) {
                            this.PromotionContentRules = PromotionContentRules;
                        }

                        public List<PromotionRangeRulesBean> getPromotionRangeRules() {
                            return PromotionRangeRules;
                        }

                        public void setPromotionRangeRules(List<PromotionRangeRulesBean> PromotionRangeRules) {
                            this.PromotionRangeRules = PromotionRangeRules;
                        }

                        public static class PromotionContentRulesBean {

                            private String Id;
                            private double LevelValue;
                            private String GivenValue;
                            private String PromotionId;
                            private String CreateDateTime;
                            private String ApplicationId;
                            private String Description;

                            public String getId() {
                                return Id;
                            }

                            public void setId(String Id) {
                                this.Id = Id;
                            }

                            public double getLevelValue() {
                                return LevelValue;
                            }

                            public void setLevelValue(double LevelValue) {
                                this.LevelValue = LevelValue;
                            }

                            public String getGivenValue() {
                                return GivenValue;
                            }

                            public void setGivenValue(String GivenValue) {
                                this.GivenValue = GivenValue;
                            }

                            public String getPromotionId() {
                                return PromotionId;
                            }

                            public void setPromotionId(String PromotionId) {
                                this.PromotionId = PromotionId;
                            }

                            public String getCreateDateTime() {
                                return CreateDateTime;
                            }

                            public void setCreateDateTime(String CreateDateTime) {
                                this.CreateDateTime = CreateDateTime;
                            }

                            public String getApplicationId() {
                                return ApplicationId;
                            }

                            public void setApplicationId(String ApplicationId) {
                                this.ApplicationId = ApplicationId;
                            }

                            public String getDescription() {
                                return Description;
                            }

                            public void setDescription(String Description) {
                                this.Description = Description;
                            }
                        }

                        public static class PromotionRangeRulesBean {

                            private String Id;
                            private String ObjectName;
                            private String ObjectId;
                            private String CollectionType;
                            private String PromotionId;
                            private String ApplicationId;
                            private String CreateDateTime;
                            private String ObjectType;

                            public String getId() {
                                return Id;
                            }

                            public void setId(String Id) {
                                this.Id = Id;
                            }

                            public String getObjectName() {
                                return ObjectName;
                            }

                            public void setObjectName(String ObjectName) {
                                this.ObjectName = ObjectName;
                            }

                            public String getObjectId() {
                                return ObjectId;
                            }

                            public void setObjectId(String ObjectId) {
                                this.ObjectId = ObjectId;
                            }

                            public String getCollectionType() {
                                return CollectionType;
                            }

                            public void setCollectionType(String CollectionType) {
                                this.CollectionType = CollectionType;
                            }

                            public String getPromotionId() {
                                return PromotionId;
                            }

                            public void setPromotionId(String PromotionId) {
                                this.PromotionId = PromotionId;
                            }

                            public String getApplicationId() {
                                return ApplicationId;
                            }

                            public void setApplicationId(String ApplicationId) {
                                this.ApplicationId = ApplicationId;
                            }

                            public String getCreateDateTime() {
                                return CreateDateTime;
                            }

                            public void setCreateDateTime(String CreateDateTime) {
                                this.CreateDateTime = CreateDateTime;
                            }

                            public String getObjectType() {
                                return ObjectType;
                            }

                            public void setObjectType(String ObjectType) {
                                this.ObjectType = ObjectType;
                            }
                        }
                    }
                }

                public static class PromotionRangeRulesBeanX {


                    private String Id;
                    private String ObjectName;
                    private String ObjectId;
                    private String CollectionType;
                    private String PromotionId;
                    private String ApplicationId;
                    private String CreateDateTime;
                    private String ObjectType;

                    public String getId() {
                        return Id;
                    }

                    public void setId(String Id) {
                        this.Id = Id;
                    }

                    public String getObjectName() {
                        return ObjectName;
                    }

                    public void setObjectName(String ObjectName) {
                        this.ObjectName = ObjectName;
                    }

                    public String getObjectId() {
                        return ObjectId;
                    }

                    public void setObjectId(String ObjectId) {
                        this.ObjectId = ObjectId;
                    }

                    public String getCollectionType() {
                        return CollectionType;
                    }

                    public void setCollectionType(String CollectionType) {
                        this.CollectionType = CollectionType;
                    }

                    public String getPromotionId() {
                        return PromotionId;
                    }

                    public void setPromotionId(String PromotionId) {
                        this.PromotionId = PromotionId;
                    }

                    public String getApplicationId() {
                        return ApplicationId;
                    }

                    public void setApplicationId(String ApplicationId) {
                        this.ApplicationId = ApplicationId;
                    }

                    public String getCreateDateTime() {
                        return CreateDateTime;
                    }

                    public void setCreateDateTime(String CreateDateTime) {
                        this.CreateDateTime = CreateDateTime;
                    }

                    public String getObjectType() {
                        return ObjectType;
                    }

                    public void setObjectType(String ObjectType) {
                        this.ObjectType = ObjectType;
                    }
                }
            }
        }
    }

    public static class CustomPropertiesBean {

        private String Name;
        private int SortNumber;
        private List<OptionsBean> Options;

        public String getName() {
            return Name;
        }

        public void setName(String Name) {
            this.Name = Name;
        }

        public int getSortNumber() {
            return SortNumber;
        }

        public void setSortNumber(int SortNumber) {
            this.SortNumber = SortNumber;
        }

        public List<OptionsBean> getOptions() {
            return Options;
        }

        public void setOptions(List<OptionsBean> Options) {
            this.Options = Options;
        }

        public static class OptionsBean {

            private String Name;
            private String Value;
            private boolean Selected;

            public String getName() {
                return Name;
            }

            public void setName(String Name) {
                this.Name = Name;
            }

            public String getValue() {
                return Value;
            }

            public void setValue(String Value) {
                this.Value = Value;
            }

            public boolean isSelected() {
                return Selected;
            }

            public void setSelected(boolean Selected) {
                this.Selected = Selected;
            }
        }
    }

    public static class ArgumentsBean {

        private String key;
        private String value;

        public String getKey() {
            return key;
        }

        public void setKey(String key) {
            this.key = key;
        }

        public String getValue() {
            return value;
        }

        public void setValue(String value) {
            this.value = value;
        }
    }

    public static class FieldsBean {

        private String key;
        private String value;

        public String getKey() {
            return key;
        }

        public void setKey(String key) {
            this.key = key;
        }

        public String getValue() {
            return value;
        }

        public void setValue(String value) {
            this.value = value;
        }
    }
}
